'use strict';

const bcrypt = require('bcryptjs');

/**
 * @param {any} msg 提示信息
 * @param {String} code 状态码
 * @param {String} data 返回内容
 */
function apiBackMessage(msg = '', code = '1', data = null) {
    return {
        code: code,
        msg: msg,
        data: data
    };
}

/**
 * 加密
 * @param {Any} str 需要被加密的数据
 * @returns 加密过后的数据
 */
function bhash(str) {
    return bcrypt.hashSync(str, 10);
}

/**
 * 加密比对
 * @param {any} str 比对数据
 * @param {any} hash 比对数据
 * @returns boolean
 */
function bcompare(str, hash) {
    return bcrypt.compareSync(str, hash);
}

module.exports = {
    apiBackMessage,
    bhash,
    bcompare
};